jQuery(document).ready(function(){
    jQuery('#btn_confirm').click(function(){
        jQuery('#confirm_submit').hide();
        jQuery('#loading').show();
    });
    if(jQuery('#continue').length){
        jQuery('#continue').click(check_avai);
    }
    if(jQuery('#country').length){
        jQuery('#country').change(function(){
            jQuery.ajax({
                url: 'payment.html',
                data: {
                    'zip_code': jQuery('#country').val()
                },
                dataType: 'json',
                type:'get',
                success:function(data){
                    jQuery('#zip_code').val('+' + data);
                    //jQuery('#country_name').val(jQuery('#country-button span').text());
                }
            });
        });
    }
    if(jQuery('#vehicle_type').length){
        jQuery('#vehicle_type').change(function(){
            jQuery.ajax({
                url: 'payment.html',
                data: {
                    'vehicle': jQuery('#vehicle_type').val()
                },
                dataType: 'json',
                type:'get',
                success:function(data){
                    if(data == 0){
                        jQuery('#price').html('Free pickup');
                        jQuery('#prices').val(0);
                    }else{
                        jQuery('#price').html(data.currency + ' ' + data.vehicle);
                        jQuery('#prices').val(data.price);
                    }
                }
            });
        });
    }
});

function check_avai(){
    if(jQuery('#arrival_flight').length && jQuery('#arrival_flight').val() !== '' && jQuery('#vehicle_type').val() === ''){
        jQuery('#m_vehicle').css('display','block');
        jQuery('#vehicle_type').focus();
        return false;
    }else if(jQuery('#gender').length && jQuery('#gender').val() === ''){
        jQuery('#m_title').css('display','block');
        if(jQuery('#vehicle_type').val() !== ''){
            jQuery('#m_vehicle').hide();
        }        
        jQuery('#gender').focus();
        return false;
    }else if(jQuery('#fullname').length && jQuery('#fullname').val() === ''){
        jQuery('#m_fullname').css('display','block');
        jQuery('#fullname').focus();
        if(jQuery('#gender').val() !== ''){
            jQuery('#m_title').hide();
        }  
        return false;
    }else if(jQuery('#email').length && jQuery('#email').val() === ''){
        jQuery('#m_email').css('display','block');
        jQuery('#email').focus();
        if(jQuery('#fullname').val() !== ''){
            jQuery('#m_fullname').hide();
        } 
        return false;
    }else if(checkMail(jQuery("#email").val()) === false){
        jQuery('#m_email2').css('display','block');
        jQuery('#email').focus();
        jQuery('#m_email').hide();
        return false;
    }else if(jQuery('#reemail').length && jQuery('#reemail').val() === ''){
        jQuery('#m_reemail').css('display','block');
        jQuery('#reemail').focus();
        if(jQuery('#email').val() !== ''){
            jQuery('#m_email2').hide();
        } 
        return false;
    }else if(jQuery('#email').val() !== jQuery('#reemail').val()){
        jQuery('#m_reemail2').css('display','block');
        jQuery('#reemail').focus();
        jQuery('#m_email2').hide();
        jQuery('#m_reemail').hide();
        return false;
    }else if(jQuery('#country').length && jQuery('#country').val() === ''){
        jQuery('#m_country').css('display','block');
        jQuery('#country').focus();
        if(jQuery('#reemail').val() !== ''){
            jQuery('#m_reemail2').hide();
        } 
        return false;
    }else if(jQuery('#zip_code').length && jQuery('#zip_code').val() === ''){
        jQuery('#m_zip').css('display','block');
        jQuery('#zip_code').focus();
        if(jQuery('#country').val() !== ''){
            jQuery('#m_country').hide();
        }
        return false;
    }else if(jQuery('#phone_number').length && jQuery('#phone_number').val() === ''){
        jQuery('#m_phone').css('display','block');
        jQuery('#phone_number').focus();
        if(jQuery('#zip_code').val() !== ''){
            jQuery('#m_zip').hide();
        }
        return false;
    }else if(jQuery('#phone_number').length && checkPhone(jQuery('#phone_number').val()) === false){
        jQuery('#m_phone2').css('display','block');
        jQuery('#phone_number').focus();
        jQuery('#m_phone').hide();
        return false;
    }else if(jQuery('#creditcard').length && jQuery('#creditcard').val() === ''){
        jQuery('#m_credit').css('display','block');
        jQuery('#creditcard').focus();
        if(jQuery('#phone_number').val() !== ''){
            jQuery('#m_phone2').hide();
        }
        return false;
    }else if(jQuery('#card_number').length && jQuery('#card_number').val() === ''){
        jQuery('#m_card_number').css('display','block');
        jQuery('#card_number').focus();
        if(jQuery('#creditcard').val() !== ''){
            jQuery('#m_credit').hide();
        }
        return false;
    }else if (jQuery('#card_number').length > 0 && ((jQuery('#card_number').val() === '' || !jQuery('#card_number').hasClass('check_ok')))) {
        jQuery('#m_card_number2').css('display','block');
        jQuery('#card_number').focus();
        jQuery('#m_card_number').hide();
        return false;
    }else if(jQuery('#card_holder').length && jQuery('#card_holder').val() === ''){
        jQuery('#m_holder').css('display','block');
        jQuery('#card_holder').focus();
        if(jQuery('#card_number').val() !== ''){
            jQuery('#m_card_number2').hide();
        }
        return false;
    }else if(jQuery('#expire_date').length && jQuery('#expire_date').val() === ''){
        jQuery('#m_expire').css('display','block');
        jQuery('#expire_date').focus();
        if(jQuery('#card_holder').val() !== ''){
            jQuery('#m_holder').hide();
        }
        return false;
    }else if(jQuery('#expire-date').val().split('-')[1] < checkin.split('-')[1] && jQuery('#expire-date').val().split('-')[2] <= checkin.split('-')[2]) {
        jQuery('#m_expire2').css('display','block');
        jQuery('#expire_date').focus();
        jQuery('#m_expire').hide();
        return false;
    }else if(jQuery('#cvv_number').length && jQuery('#cvv_number').val() === ''){
        jQuery('#m_cvv').css('display','block');
        jQuery('#cvv_number').focus();
        if(jQuery('#expire_date').val() !== ''){
            jQuery('#m_expire2').hide();
        }
        return false;
    }else{
        if(jQuery('#cvv_number').val() !== ''){
            jQuery('#m_cvv').hide();
        }
    }
}
//check email
function checkMail(str) {
    var filter = /^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.([a-zA-Z]){2,4})$/;
    var rtn = filter.test(str);
    return rtn;
}
//check phone

function checkPhone(str) {
    var filter = /^\+?[\d\s]{7,11}$/;
    var rtn = filter.test(str);
    return rtn;
}
(function () {
    jQuery(function () {
        if(jQuery('#card_number').length){
            return jQuery('#card_number').validateCreditCard(function (result) {
                if (!(result.card_type != null)) {
                    jQuery('#card_number').removeClass('check_ok');
                }
                var card_array = {
                    'visa' : 'Visa',
                    'mastercard' : 'Master Card',
                    'amex' : 'American Express',
                    'jcb' : 'JCB'
                };
                if(jQuery('#card_number').val() !== '' && result.card_type.name){
                    jQuery("#creditcard").val(result.card_type.name);
                    jQuery("#creditcard-button span").html(card_array[result.card_type.name]);
                }
                if (result.length_valid && result.luhn_valid) {
                    return jQuery('#card_number').addClass('check_ok')
                } else {
                    return jQuery('#card_number').removeClass('check_ok')
                }
            })
        }
    })
}).call(this);